home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 6 / The Arsenal Files 6 (Arsenal Computer).ISO / pcboard / wild11.zip / WILD.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1996-01-30  |  20KB  |  1,374 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.1O (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN003
  21.     Boolean  BOOLEAN004
  22.     Boolean  BOOLEAN005
  23.     Boolean  BOOLEAN006
  24.     Boolean  BOOLEAN007
  25.     Boolean  BOOLEAN008
  26.     Boolean  BOOLEAN009
  27.     Boolean  BOOLEAN010
  28.     Boolean  BOOLEAN011
  29.     Boolean  BOOLEAN012
  30.     Boolean  BOOLEAN013
  31.     Boolean  BOOLEAN014
  32.     Integer  INTEGER001
  33.     Integer  INTEGER002
  34.     Integer  INTEGER003
  35.     Integer  INTEGER004
  36.     Real     REAL001
  37.     Real     REAL002
  38.     Real     REAL003
  39.     Real     REAL004
  40.     Real     REAL005
  41.     String   STRING010
  42.     String   STRING013
  43.     String   STRING014
  44.     String   STRING015
  45.     String   STRING016
  46.     String   STRING017
  47.     String   STRING018
  48.     String   STRING019
  49.     String   STRING020
  50.     String   STRING021
  51.     String   STRING022
  52.     String   TSTRING023(20)
  53.     String   STRING024
  54.     String   STRING025
  55.     String   STRING026
  56.     String   STRING027
  57.     String   STRING028
  58.     String   STRING029
  59.     String   STRING030
  60.     String   STRING031
  61.     String   STRING032
  62.     String   STRING033
  63.     String   STRING034
  64.     String   STRING035
  65.     String   STRING036
  66.     String   STRING037
  67.     String   STRING038
  68.     String   STRING039
  69.     String   STRING040
  70.     String   STRING041
  71.     String   STRING042
  72.     String   STRING043
  73.     String   STRING044
  74.     String   STRING045
  75.     String   STRING046
  76.     String   STRING047
  77.     String   STRING048
  78.     String   STRING049
  79.     String   STRING050
  80.     String   STRING051
  81.     String   STRING052
  82.     String   STRING053
  83.     String   STRING054
  84.     String   STRING055
  85.     String   STRING056
  86.     String   STRING057
  87.     String   STRING058
  88.     String   STRING059
  89.     String   STRING060
  90.     String   TSTRING061(10)
  91.     String   TSTRING062(10)
  92.     Int      INT001
  93.     Int      INT002
  94.     Int      INT003
  95.     Int      INT004
  96.     Int      INT005
  97.     Int      INT006
  98.     Int      INT008
  99.     Int      INT009
  100.     Int      INT010
  101.     Int      INT011
  102.     Int      INT012
  103.     Int      INT013
  104.     Int      INT014
  105.     Int      INT015
  106.     Int      INT016
  107.     Int      INT017
  108.     Int      INT018
  109.     Int      INT019
  110.     Int      INT020
  111.     Int      INT021
  112.     Int      INT022
  113.     Int      INT023
  114.     Int      INT024
  115.     Int      INT025
  116.     Int      INT026
  117.     Int      INT027
  118.     Int      INT028
  119.     Int      INT029
  120.     Int      INT030
  121.     Int      INT031
  122.     Int      INT032
  123.     Int      INT033
  124.     Int      INT034
  125.     Int      INT035
  126.     Int      INT036
  127.     Int      INT037
  128.     Int      INT038
  129.     Int      INT039
  130.     BigStr   BIGSTR001
  131.     BigStr   BIGSTR002
  132.     Declare  Function FUNCTION001(String STRING001, String STRING002, String STRING003) Boolean
  133.     Declare  Function FUNCTION002(String STRING008, String STRING009) Boolean
  134.     Declare  Function FUNCTION003(String STRING011, String STRING012, Int INT007) String
  135.  
  136. ;------------------------------------------------------------------------------
  137.  
  138.     Goto LABEL006
  139.     End
  140.  
  141. ;------------------------------------------------------------------------------
  142.  
  143.     Function FUNCTION001(String STRING001, String STRING002, String STRING003) Boolean
  144.  
  145.     String   STRING004
  146.     String   STRING005
  147.     String   STRING006
  148.     String   STRING007
  149.     Boolean  BOOLEAN002
  150.     String   STRING008
  151.  
  152.     If (InStr(STRING001, ".") <> 0) Then
  153.         STRING006 = Mid(STRING001, 1, InStr(STRING001, ".") - 1)
  154.         STRING007 = Mid(STRING001, InStr(STRING001, "."), Len(STRING001) - InStr(STRING001, ".") + 1)
  155.         If ((STRING007 == ".") || (STRING007 == ".???")) STRING007 = ".*"
  156.     Else
  157.         STRING006 = STRING001
  158.         STRING007 = ".*"
  159.     Endif
  160.     FUNCTION001 = 0
  161.     STRING004 = STRING006
  162.     STRING005 = STRING002
  163.     BOOLEAN002 = FUNCTION002(STRING004, STRING005)
  164.     If (BOOLEAN002) Then
  165.         STRING004 = STRING007
  166.         STRING005 = STRING003
  167.         FUNCTION001 = FUNCTION002(STRING004, STRING005)
  168.     Endif
  169.  
  170.     EndFunc
  171.  
  172.  
  173. ;------------------------------------------------------------------------------
  174.  
  175.     Function FUNCTION002(String STRING008, String STRING009) Boolean
  176.  
  177.     Int      INT001
  178.     Int      INT002
  179.     Int      INT003
  180.     Int      INT004
  181.     Int      INT005
  182.     Int      INT006
  183.     String   STRING010
  184.     String   STRING011
  185.  
  186.     FUNCTION002 = 1
  187.     INT001 = 0
  188.     INT002 = 0
  189.     INT003 = 1
  190.     INT004 = 0
  191.     INT005 = Len(STRING008)
  192.     INT006 = Len(STRING009)
  193.     :LABEL001
  194.     INT001 = INT001 + INT003
  195.     INT002 = INT002 + INT003
  196.     INT004 = INT004 + 1
  197.     If (INT004 > INT006) Goto LABEL002
  198.     STRING010 = Mid(STRING008, INT001, 1)
  199.     If (STRING010 == "*") Goto LABEL003
  200.     If ((STRING010 <> "?") && (Mid(STRING009, INT002, 1) <> STRING010)) Then
  201.         FUNCTION002 = 0
  202.     Else
  203.         Goto LABEL001
  204.         :LABEL002
  205.         If ((INT001 >= Len(STRING008)) || (INT001 < 1)) Return
  206.         If ((Mid(STRING008, INT001, 1) <> "*") && (Mid(STRING008, INT001, 1) <> "?")) Then
  207.             FUNCTION002 = 0
  208.             Goto LABEL004
  209.         Else
  210.             Goto LABEL001
  211.         Endif
  212.         :LABEL003
  213.         If (INT001 <> INT005) Then
  214.             INT003 = -1
  215.             INT005 = INT001
  216.             INT001 = Len(STRING008) + 1
  217.             INT002 = Len(STRING009) + 1
  218.             INT004 = 0
  219.             Goto LABEL001
  220.         Endif
  221.     Endif
  222.     :LABEL004
  223.  
  224.     EndFunc
  225.  
  226.  
  227. ;------------------------------------------------------------------------------
  228.  
  229.     Function FUNCTION003(String STRING011, String STRING012, Int INT007) String
  230.  
  231.     String   STRING014
  232.     String   STRING015
  233.     String   STRING016
  234.     String   STRING017
  235.     Int      INT008
  236.     Int      INT009
  237.     Int      INT010
  238.     Int      INT011
  239.     Int      INT012
  240.  
  241.     If ((InStr(STRING011, "-") == 0) || (InStr(STRING011, "-") == 1)) Goto LABEL005
  242.     STRING015 = STRING011
  243.     STRING011 = ""
  244.     Tokenize STRING015
  245.     If (TokCount() == 0) Goto LABEL005
  246.     For INT010 = 1 To Len(STRING015)
  247.         STRING014 = GetToken()
  248.         If (STRING014 == "") Break
  249.         If (InStr(STRING014, "-") == 0) Then
  250.             STRING011 = STRING011 + STRING014 + " "
  251.             Continue
  252.         Endif
  253.         STRING016 = Mid(STRING014, 1, InStr(STRING014, "-") - 1)
  254.         If (STRING016 <> "") STRING017 = Mid(STRING014, InStr(STRING014, "-") + 1, Len(STRING014))
  255.         INT008 = S2I(STRING016, 10)
  256.         INT009 = S2I(STRING017, 10)
  257.         If (INT008 < 1) Then
  258.             If (INT008 == 0) STRING016 = STRING014
  259.             Newline
  260.             PrintLn ReadLine(STRING012, 38), STRING016, ReadLine(STRING012, 39)
  261.             Delay 36
  262.             Continue
  263.         Endif
  264.         If (INT009 > INT007) Then
  265.             Newline
  266.             PrintLn ReadLine(STRING012, 40), INT009, ReadLine(STRING012, 41)
  267.             Delay 36
  268.             Continue
  269.         Endif
  270.         If (INT009 >= INT008) Then
  271.             For INT011 = INT008 To INT009
  272.                 STRING011 = STRING011 + LTrim(I2S(INT011, 10), " ") + " "
  273.             Next
  274.             Continue
  275.         Endif
  276.         Newline
  277.         PrintLn ReadLine(STRING012, 42), STRING014
  278.     Next
  279.     :LABEL005
  280.     FUNCTION003 = STRING011
  281.  
  282.     EndFunc
  283.  
  284.     :LABEL006
  285.     INT012 = TokCount()
  286.     If (INT012 > 0) Then
  287.         STRING018 = GetToken()
  288.         If ((STRING018 == "DL") || (STRING018 == "FL")) Then
  289.             If (STRING018 == "DL") Then
  290.                 BOOLEAN004 = 1
  291.                 Goto LABEL007
  292.             Endif
  293.             If (STRING018 == "FL") Then
  294.                 BOOLEAN005 = 1
  295.             Endif
  296.             :LABEL007
  297.             Dec INT012
  298.             STRING018 = ""
  299.             STRING018 = GetToken()
  300.         Endif
  301.     Endif
  302.     If (((INT012 == 0) && (STRING018 == "")) && BOOLEAN004) Then
  303.         STRING022 = Chr(13)
  304.     Else
  305.         STRING021 = PPEPath() + "WILDTXT" + LangExt()
  306.         If (INT012 == 0) Then
  307.             STRING019 = ""
  308.             If (BOOLEAN005) Goto LABEL010
  309.             If (FlagCnt()) Then
  310.                 If (BOOLEAN004) Goto LABEL008
  311.                 STRING022 = "D " + Chr(13)
  312.                 Goto LABEL033
  313.                 :LABEL008
  314.                 STRING020 = ReadLine(STRING021, 1)
  315.                 Goto LABEL009
  316.             Endif
  317.             STRING020 = ReadLine(STRING021, 2)
  318.             :LABEL009
  319.             Goto LABEL011
  320.             :LABEL010
  321.             STRING020 = ReadLine(STRING021, 64)
  322.             :LABEL011
  323.             Newline
  324.             InputStr STRING020, STRING019, 14, 80, Mask_Ascii(), 8 + 256 + 16
  325.             If (STRING019 == "") Then
  326.                 STRING022 = Chr(13)
  327.                 Goto LABEL033
  328.             Endif
  329.             Tokenize STRING019
  330.             STRING018 = GetToken()
  331.             If (BOOLEAN005) Then
  332.                 If (STRING018 <> "D") Then
  333.                     STRING022 = STRING019 + Chr(13)
  334.                     Goto LABEL033
  335.                     Goto LABEL012
  336.                 Endif
  337.                 STRING018 = GetToken()
  338.                 If (STRING018 == "") Then
  339.                     STRING022 = Chr(13)
  340.                     Goto LABEL033
  341.                 Endif
  342.             Endif
  343.             :LABEL012
  344.             If (!BOOLEAN004 && !BOOLEAN005) Then
  345.                 STRING022 = "D "
  346.                 BOOLEAN004 = 1
  347.             Endif
  348.         Endif
  349.         INT013 = 0
  350.         While (1) Do
  351.             If (STRING018 == "") Break
  352.             If ((InStr(STRING018, "*") <> 0) || (InStr(STRING018, "?") <> 0)) Then
  353.                 If ((((InStr(STRING018, ".") > 9) || (Len(STRING018) - InStr(STRING018, ".") > 3)) || (InStr(STRING018, "**") > 0)) || (InStr(STRING018, "..") > 0)) Then
  354.                     Gosub LABEL020
  355.                 Else
  356.                     Inc INT013
  357.                     TSTRING023(INT013) = STRING018
  358.                 Endif
  359.             Else
  360.                 If (BOOLEAN004) Goto LABEL013
  361.                 BOOLEAN004 = 1
  362.                 STRING022 = "D "
  363.                 :LABEL013
  364.                 STRING022 = STRING022 + " " + STRING018
  365.             Endif
  366.             STRING018 = GetToken()
  367.         EndWhile
  368.         If ((INT012 <> 0) && (INT013 == 0)) Then
  369.             INT012 = 0
  370.         Else
  371.             If ((INT012 == 0) && (INT013 == 0)) Goto LABEL033
  372.             INT012 = INT013
  373.             INT013 = 1
  374.             GetUser
  375.             Gosub LABEL022
  376.             STRING043 = PPEPath() + "WILD" + String(PcbNode()) + ".DEF"
  377.             If (Exist(STRING043)) Delete STRING043
  378.             FAppend 6, STRING043, 1, 0
  379.             Gosub LABEL037
  380.             If (InStr(STRING019, ".") > 0) Then
  381.                 STRING033 = Mid(STRING019, 1, InStr(STRING019, ".") - 1)
  382.                 STRING034 = Mid(STRING019, InStr(STRING019, "."), Len(STRING019) - InStr(STRING019, ".") + 1)
  383.                 If ((STRING034 == ".") || (STRING034 == ".???")) STRING034 = ".*"
  384.             Else
  385.                 STRING033 = STRING019
  386.                 STRING034 = ".*"
  387.                 STRING019 = STRING019 + ".*"
  388.             Endif
  389.             StartDisp 1
  390.             Gosub LABEL021
  391.             Gosub LABEL046
  392.             If (!BOOLEAN014) Gosub LABEL047
  393.             Gosub LABEL039
  394.             Gosub LABEL040
  395.             Gosub LABEL041
  396.             FOpen 3, STRING059, 0, 0
  397.             While (1) Do
  398.                 FGet 3, STRING024
  399.                 BOOLEAN012 = Ferr(3)
  400.                 If (INT015 >= INT021) BOOLEAN012 = 1
  401.                 If (BOOLEAN010) BOOLEAN012 = 1
  402.                 If (BOOLEAN012) Then
  403.                     Inc INT013
  404.                     If (INT013 <= INT012) Then
  405.                         Gosub LABEL043
  406.                         STRING019 = TSTRING023(INT013)
  407.                         Gosub LABEL022
  408.                         Gosub LABEL021
  409.                         STRING028 = Left(STRING019, 1)
  410.                         Frewind 3
  411.                         Continue
  412.                         Goto LABEL014
  413.                     Endif
  414.                     Gosub LABEL043
  415.                     Goto LABEL033
  416.                 Endif
  417.                 :LABEL014
  418.                 BOOLEAN013 = 0
  419.                 If (Left(STRING024, 1) <> "%") Then
  420.                     STRING018 = STRING024 + STRING019
  421.                     STRING027 = FindFirst(STRING018)
  422.                     While (STRING027 <> "") Do
  423.                         If (INT023 <> 0) Then
  424.                             If (Mid(STRING027, 1, INT023) == STRING035) Then
  425.                                 BOOLEAN006 = 1
  426.                                 Goto LABEL015
  427.                             Endif
  428.                             BOOLEAN006 = 0
  429.                             :LABEL015
  430.                             Goto LABEL016
  431.                         Endif
  432.                         If (InStr(STRING027, ".") <> 0) Then
  433.                             STRING029 = Mid(STRING027, 1, InStr(STRING027, ".") - 1)
  434.                             STRING030 = Mid(STRING027, InStr(STRING027, "."), Len(STRING027) - InStr(STRING027, ".") + 1)
  435.                             BOOLEAN006 = FUNCTION001(STRING019, STRING029, STRING030)
  436.                             Gosub LABEL046
  437.                         Endif
  438.                         :LABEL016
  439.                         If (BOOLEAN006) Gosub LABEL044
  440.                         STRING027 = FindNext()
  441.                         Gosub LABEL046
  442.                         Gosub LABEL038
  443.                         If (BOOLEAN010) Break
  444.                         If (INT015 >= INT021) Break
  445.                     EndWhile
  446.                     Continue
  447.                 Endif
  448.                 BOOLEAN013 = 1
  449.                 Gosub LABEL038
  450.                 If (BOOLEAN010) Break
  451.                 STRING024 = Mid(STRING024, 2, Len(STRING024))
  452.                 FOpen 4, STRING024, 0, 0
  453.                 FRead 4, INT020, 2
  454.                 STRING056 = ""
  455.                 If ((STRING028 == "*") || (STRING028 == "?")) Then
  456.                     STRING028 = "A"
  457.                     INT019 = 1
  458.                 Else
  459.                     If (STRING028 < "A") Then
  460.                         STRING056 = STRING028
  461.                         STRING028 = "A"
  462.                     Endif
  463.                     If (STRING028 > "Z") STRING028 = "Z"
  464.                     INT019 = S2I(STRING028, 36) - 9
  465.                 Endif
  466.                 FSeek 4, INT019 * 2, 0
  467.                 FRead 4, INT025, 2
  468.                 FRead 4, INT026, 2
  469.                 If (((STRING056 < "A") && (STRING056 <> "")) && (STRING028 == "A")) Then
  470.                     INT026 = INT025
  471.                     INT025 = 1
  472.                 Endif
  473.                 If (STRING028 == "Z") Then
  474.                     INT026 = INT020
  475.                     If (STRING056 <> "") Then
  476.                         INT026 = INT025
  477.                         INT025 = 1
  478.                     Endif
  479.                 Endif
  480.                 Gosub LABEL025
  481.                 FSeek 4, INT025 * 13 + 128, 0
  482.                 While (1) Do
  483.                     If (INT025 >= INT026) Break
  484.                     If (INT015 >= INT021) Break
  485.                     Gosub LABEL046
  486.                     Gosub LABEL038
  487.                     If (BOOLEAN010) Break
  488.                     FRead 4, STRING029, 8
  489.                     FRead 4, STRING030, 3
  490.                     FRead 4, INT014, 2
  491.                     Inc INT025
  492.                     If (INT023 <> 0) Then
  493.                         If (Mid(STRING029, 1, INT023) > STRING035) Break
  494.                         If (STRING035 <> Mid(STRING029, 1, INT023)) Continue
  495.                     Endif
  496.                     STRING029 = RTrim(STRING029, " ")
  497.                     STRING030 = "." + RTrim(STRING030, " ")
  498.                     STRING031 = STRING029 + STRING030
  499.                     If (FUNCTION001(STRING019, STRING029, STRING030)) Gosub LABEL044
  500.                 EndWhile
  501.                 FClose 4
  502.             EndWhile
  503.             FClose 6
  504.             If (INT015) Goto LABEL017
  505.             Gosub LABEL019
  506.             Goto LABEL018
  507.             :LABEL017
  508.             Gosub LABEL049
  509.             Gosub LABEL029
  510.             :LABEL018
  511.             StartDisp 2
  512.             If (INT013 == INT012) Inc INT013
  513.             Goto LABEL033
  514.             End
  515.             :LABEL019
  516.             If (AnsiOn()) Then
  517.                 Print Chr(13)
  518.                 ClrEol
  519.             Else
  520.                 Newline
  521.             Endif
  522.             PrintLn ReadLine(STRING021, 3)
  523.             Newline
  524.             Wait
  525.             Return
  526.             :LABEL020
  527.             Newline
  528.             PrintLn ReadLine(STRING021, 4), " ", STRING018, ReadLine(STRING021, 5)
  529.             Delay 36
  530.             Return
  531.             :LABEL021
  532.             INT024 = 0
  533.             Newline
  534.             PrintLn ReadLine(STRING021, 9)
  535.             Print ReadLine(STRING021, 10), STRING019
  536.             Newline
  537.             Print ReadLine(STRING021, 11)
  538.             Return
  539.             :LABEL022
  540.             STRING019 = ""
  541.             STRING019 = Upper(TSTRING023(INT013))
  542.             If (InStr(STRING019, "*")) Gosub LABEL024
  543.             STRING046 = STRING018
  544.             Gosub LABEL048
  545.             STRING018 = STRING046
  546.             If (INT033 > 1) Then
  547.                 Newline
  548.                 Print ReadLine(STRING021, 62), " ", STRING018, " ", ReadLine(STRING021, 63), " ", STRING019
  549.                 Newline
  550.                 Delay 18
  551.             Endif
  552.             STRING028 = Left(STRING019, 1)
  553.             If ((STRING028 <> "*") || (STRING028 <> "?")) Then
  554.                 INT032 = InStr(STRING019, "?")
  555.                 INT039 = InStr(STRING019, "*")
  556.                 If ((INT032 == 1) || (INT039 == 1)) Then
  557.                     Newline
  558.                     If ((STRING019 == "*.*") && (U_Sec < INT018)) Then
  559.                         DispFile PPEPath() + "allsec", 4 + 1
  560.                         End
  561.                     Endif
  562.                 Endif
  563.                 If (INT039 > 0) Then
  564.                     If ((INT039 > INT032) && (INT032 == 0)) STRING035 = Mid(STRING019, 1, INT039 - 1)
  565.                     If ((INT039 > INT032) && (INT032 <> 0)) STRING035 = Mid(STRING019, 1, INT032 - 1)
  566.                     If (INT039 < INT032) STRING035 = Mid(STRING019, 1, INT039 - 1)
  567.                     Goto LABEL023
  568.                 Endif
  569.                 If (INT032 > 0) STRING035 = Mid(STRING019, 1, INT032 - 1)
  570.                 :LABEL023
  571.                 INT023 = Len(STRING035)
  572.                 If (InStr(STRING019, ".") <= INT023) Then
  573.                     INT023 = InStr(STRING019, ".") - 1
  574.                     STRING035 = Mid(STRING019, 1, InStr(STRING019, ".") - 1)
  575.                 Endif
  576.             Endif
  577.             Return
  578.             :LABEL024
  579.             INT033 = 0
  580.             For INT027 = 1 To InStr(STRING019, ".")
  581.                 If (Mid(STRING019, INT027, 1) == "*") Inc INT033
  582.             Next
  583.             If (INT033 > 1) Then
  584.                 STRING018 = STRING019
  585.                 STRING019 = "*." + Mid(STRING019, InStr(STRING019, ".") + 1, Len(STRING019) - InStr(STRING019, "."))
  586.             Endif
  587.             Return
  588.             :LABEL025
  589.             BOOLEAN008 = 0
  590.             BOOLEAN007 = 0
  591.             INT031 = INT026
  592.             INT030 = INT025 - 1
  593.             :LABEL026
  594.             If (BOOLEAN008) Goto LABEL027
  595.             REAL001 = INT031
  596.             REAL002 = INT030
  597.             REAL001 = REAL001 / 2
  598.             REAL002 = REAL002 / 2
  599.             REAL003 = REAL001 + REAL002 + 0.5
  600.             INT029 = REAL003
  601.             INTEGER001 = (INT029 - 1) * 13 + 128
  602.             FSeek 4, INTEGER001, 0
  603.             FRead 4, STRING029, 8
  604.             FRead 4, STRING030, 3
  605.             STRING029 = RTrim(STRING029, " ")
  606.             STRING030 = RTrim(STRING030, " ")
  607.             STRING031 = STRING029 + "." + STRING030
  608.             If (Mid(STRING031, 1, INT023) == STRING035) Then
  609.                 BOOLEAN007 = 1
  610.                 BOOLEAN008 = 1
  611.             ElseIf (INT031 - INT030 < 2) Then
  612.                 BOOLEAN008 = 1
  613.             ElseIf (Mid(STRING031, 1, INT023) < STRING035) Then
  614.                 INT030 = INT029
  615.             ElseIf (Mid(STRING031, 1, INT023) > STRING035) Then
  616.                 INT031 = INT029
  617.             Endif
  618.             Goto LABEL026
  619.             :LABEL027
  620.             Gosub LABEL046
  621.             If (BOOLEAN007) Then
  622.                 While (1) Do
  623.                     If (INT029 > 5) Then
  624.                         INT029 = INT029 - 5
  625.                         Goto LABEL028
  626.                     Endif
  627.                     INT025 = 0
  628.                     Break
  629.                     :LABEL028
  630.                     INTEGER001 = INT029 * 13 + 128
  631.                     FSeek 4, INTEGER001, 0
  632.                     FRead 4, STRING029, 8
  633.                     FRead 4, STRING030, 3
  634.                     STRING029 = RTrim(STRING029, " ")
  635.                     STRING030 = RTrim(STRING030, " ")
  636.                     STRING031 = STRING029 + "." + STRING030
  637.                     If (Mid(STRING031, 1, INT023) < STRING035) Then
  638.                         INT025 = INT029
  639.                         Break
  640.                     Endif
  641.                 EndWhile
  642.             Endif
  643.             Return
  644.             :LABEL029
  645.             StartDisp 1
  646.             INT035 = 0
  647.             KeyFlush
  648.             Newline
  649.             PrintLn ReadLine(STRING021, 12)
  650.             PrintLn ReadLine(STRING021, 13)
  651.             BOOLEAN009 = 0
  652.             INT033 = 0
  653.             INT035 = INT035 + 3
  654.             INT036 = 3
  655.             STRING043 = PPEPath() + "WILD" + String(PcbNode()) + ".DEF"
  656.             FOpen 7, STRING043, 0, 0
  657.             While (1) Do
  658.                 FGet 7, STRING018
  659.                 STRING018 = Mid(STRING018, 1, InStr(STRING018, " ") - 1)
  660.                 If (Ferr(7)) Break
  661.                 Inc INT033
  662.                 If (INT033 > INT021) Break
  663.                 If (BOOLEAN009) Then
  664.                     BOOLEAN009 = 0
  665.                 Else
  666.                     If (INT033 < 10) Print " "
  667.                     Print "@X0F" + String(INT033) + "."
  668.                     If (INT033 < 100) Then
  669.                         Print "   "
  670.                     Else
  671.                         Print "  "
  672.                     Endif
  673.                     Print "@X0A" + STRING018 + Space(18 - Len(String(STRING018)))
  674.                     If (INT033 % INT036 == 0) Then
  675.                         Newline
  676.                         Inc INT035
  677.                     Endif
  678.                     If (INT035 > U_PageLen - 2) Then
  679.                     Endif
  680.                     STRING020 = ReadLine(STRING021, 14)
  681.                     STRING019 = ""
  682.                     InputStr STRING020, STRING019, 14, 1, Mask_Ascii(), 8
  683.                     If (STRING019 == "") Then
  684.                         INT035 = 0
  685.                         If (AnsiOn()) Then
  686.                             Print Chr(13)
  687.                             ClrEol
  688.                         Endif
  689.                         Continue
  690.                         Continue
  691.                     Endif
  692.                     If (STRING019 == YesChar()) Then
  693.                         INT035 = 0
  694.                         Continue
  695.                         Continue
  696.                     Endif
  697.                     If (STRING019 == "Y") Then
  698.                         INT035 = 0
  699.                         Continue
  700.                         Continue
  701.                     Endif
  702.                     If (STRING019 == NoChar()) Then
  703.                         Break
  704.                         Continue
  705.                     Endif
  706.                     If (STRING019 == "N") Then
  707.                         Break
  708.                         Continue
  709.                     Endif
  710.                     If (STRING019 == "F") Then
  711.                         BOOLEAN009 = 1
  712.                         Gosub LABEL030
  713.                         INT035 = 0
  714.                         Continue
  715.                         Continue
  716.                     Endif
  717.                     Return
  718.                 Endif
  719.             EndWhile
  720.             Newline
  721.             FClose 7
  722.             BOOLEAN009 = 0
  723.             Goto LABEL031
  724.             :LABEL030
  725.             Newline
  726.             PrintLn ReadLine(STRING021, 15)
  727.             STRING020 = ReadLine(STRING021, 16)
  728.             STRING019 = ""
  729.             InputStr STRING020, STRING019, 14, 50, Mask_Ascii(), 256 + 8
  730.             If (STRING019 == "") Return
  731.             STRING054 = STRING048
  732.             If (InStr(STRING019, "-") > 1) STRING019 = FUNCTION003(STRING019, STRING021, INT021)
  733.             Tokenize STRING019
  734.             INT026 = TokCount()
  735.             If (FlagCnt() + INT026 > INT028) Then
  736.                 Newline
  737.                 PrintLn ReadLine(STRING021, 17), " @X0E", INT026, ReadLine(STRING021, 18)
  738.                 Newline
  739.                 PrintLn ReadLine(STRING021, 19), " ", FlagCnt()
  740.                 PrintLn ReadLine(STRING021, 20), " ", INT026
  741.                 PrintLn ReadLine(STRING021, 21), " ", INT028
  742.                 Newline
  743.                 INT026 = INT028 - FlagCnt()
  744.                 PrintLn ReadLine(STRING021, 22), " @X0E", INT026, ReadLine(STRING021, 23)
  745.             Endif
  746.             Newline
  747.             PrintLn ReadLine(STRING021, 48)
  748.             For INT027 = 1 To INT026
  749.                 STRING018 = GetToken()
  750.                 If ((S2I(STRING018, 10) == 0) && (STRING018 <> "0")) Then
  751.                     If (STRING027 <> STRING018) Then
  752.                         PrintLn ReadLine(STRING021, 24)
  753.                         PrintLn ReadLine(STRING021, 25) + STRING018 + ReadLine(STRING021, 26)
  754.                         STRING027 = STRING018
  755.                         Newline
  756.                         Delay 36
  757.                     Endif
  758.                     Continue
  759.                 Endif
  760.                 If ((S2I(STRING018, 10) > INT015) || (S2I(STRING018, 10) < 1)) Then
  761.                     PrintLn ReadLine(STRING021, 27), STRING018, ReadLine(STRING021, 28)
  762.                     Delay 18
  763.                     Continue
  764.                 Endif
  765.                 STRING027 = ReadLine(STRING043, S2I(STRING018, 10))
  766.                 STRING040 = Mid(STRING027, 15, Len(STRING027) - 14)
  767.                 STRING027 = Mid(STRING027, 1, InStr(STRING027, " ") - 1)
  768.                 If (INTEGER003) Then
  769.                     INTEGER004 = INTEGER004 + FileInf(STRING040 + STRING027, 4)
  770.                     If (INTEGER004 > INTEGER003 - U_BdlDay()) Then
  771.                         Newline
  772.                         PrintLn ReadLine(STRING021, 49)
  773.                         PrintLn ReadLine(STRING021, 50)
  774.                         PrintLn ReadLine(STRING021, 51)
  775.                         Newline
  776.                         PrintLn ReadLine(STRING021, 52)
  777.                         PrintLn ReadLine(STRING021, 53)
  778.                         Newline
  779.                         PrintLn ReadLine(STRING021, 54), INTEGER003
  780.                         PrintLn ReadLine(STRING021, 55), U_BdlDay()
  781.                         PrintLn ReadLine(STRING021, 56), INTEGER003 - U_BdlDay()
  782.                         PrintLn ReadLine(STRING021, 57), INTEGER004
  783.                         INTEGER004 = INTEGER004 - FileInf(STRING040 + STRING027, 4)
  784.                         Break
  785.                     Endif
  786.                 Endif
  787.                 If ((((((InStr(STRING048, STRING027) == 0) && (InStr(STRING049, STRING027) == 0)) && (InStr(STRING050, STRING027) == 0)) && (InStr(STRING051, STRING027) == 0)) && (InStr(STRING052, STRING027) == 0)) && (InStr(STRING053, STRING027) == 0)) Then
  788.                     Inc INT038
  789.                     STRING026 = Trim(STRING027, " ")
  790.                     STRING048 = STRING048 + STRING026 + " "
  791.                     If (Len(STRING048) > 230) Then
  792.                         While (1) Do
  793.                             If (STRING049 == "") Then
  794.                                 STRING049 = STRING048
  795.                                 Break
  796.                             Endif
  797.                             If (STRING050 == "") Then
  798.                                 STRING050 = STRING048
  799.                                 Break
  800.                             Endif
  801.                             If (STRING051 == "") Then
  802.                                 STRING051 = STRING048
  803.                                 Break
  804.                             Endif
  805.                             If (STRING052 == "") Then
  806.                                 STRING052 = STRING048
  807.                                 Break
  808.                             Endif
  809.                             If (STRING053 == "") Then
  810.                                 STRING053 = STRING048
  811.                                 Break
  812.                             Endif
  813.                         EndWhile
  814.                         STRING048 = ""
  815.                     Endif
  816.                     Continue
  817.                 Endif
  818.                 Newline
  819.                 PrintLn ReadLine(STRING021, 29), STRING027, ReadLine(STRING021, 30)
  820.             Next
  821.             If (STRING054 <> STRING048) Then
  822.                 INT035 = 0
  823.                 Newlines 2
  824.                 PrintLn ReadLine(STRING021, 31), INT038, ReadLine(STRING021, 32)
  825.             Endif
  826.             Return
  827.             :LABEL031
  828.             STRING019 = ""
  829.             Newline
  830.             STRING020 = ReadLine(STRING021, 33)
  831.             InputStr STRING020, STRING019, 14, 1, "EFHLR ", 256 + 8 + 2 + 4
  832.             INT035 = 7
  833.             If (STRING019 == "") Then
  834.                 If (FlagCnt()) Then
  835.                     If (Left(STRING022, 2) <> "D ") STRING022 = "D " + STRING022
  836.                 Endif
  837.                 If (INT013 < INT012) Return
  838.                 If (BOOLEAN005) STRING022 = STRING022 + Chr(13)
  839.             Else
  840.                 Select Case (STRING019)
  841.                     Case "F"
  842.                         Goto LABEL032
  843.                     Case "R"
  844.                         Goto LABEL029
  845.                     Case "E"
  846.                         Gosub LABEL034
  847.                         Goto LABEL031
  848.                     Case "H"
  849.                         Gosub LABEL035
  850.                         Goto LABEL031
  851.                     Case "L"
  852.                         Gosub LABEL036
  853.                         Goto LABEL031
  854.                     Case Else
  855.                         Newline
  856.                         PrintLn ReadLine(STRING021, 34)
  857.                         Delay 36
  858.                         Goto LABEL031
  859.                 End Select
  860.                 Return
  861.                 :LABEL032
  862.                 Gosub LABEL030
  863.                 Goto LABEL031
  864.             Endif
  865.         Endif
  866.     Endif
  867.     :LABEL033
  868.     If ((INT013 <= INT012) && (INT012 <> 0)) Return
  869.     If (((!BOOLEAN004 && !BOOLEAN005) && (STRING022 <> "")) && (InStr(STRING022, "D ") == 0)) Then
  870.         STRING022 = "D " + STRING022
  871.     Endif
  872.     If (STRING053 <> "") Command 0, "FLAG " + STRING053
  873.     If (STRING052 <> "") Command 0, "FLAG " + STRING052
  874.     If (STRING051 <> "") Command 0, "FLAG " + STRING051
  875.     If (STRING050 <> "") Command 0, "FLAG " + STRING050
  876.     If (STRING049 <> "") Command 0, "FLAG " + STRING049
  877.     If (STRING048 <> "") Command 0, "FLAG " + STRING048
  878.     If ((((((STRING053 <> "") || (STRING052 <> "")) || (STRING051 <> "")) || (STRING050 <> "")) || (STRING049 <> "")) || (STRING048 <> "")) Then
  879.         STRING022 = "D " + Chr(13)
  880.     Endif
  881.     KbdStuff STRING022
  882.     StartDisp 2
  883.     End
  884.     :LABEL034
  885.     If ((((((STRING048 == "") && (STRING049 == "")) && (STRING050 == "")) && (STRING051 == "")) && (STRING052 == "")) && (STRING053 == "")) Then
  886.         Newline
  887.         PrintLn ReadLine(STRING021, 35)
  888.         Delay 36
  889.         Return
  890.     Endif
  891.     Newline
  892.     PrintLn ReadLine(STRING021, 58)
  893.     STRING020 = ReadLine(STRING021, 59) + String(INT038) + ReadLine(STRING021, 60)
  894.     InputStr STRING020, STRING019, 14, 1, Mask_Ascii(), 8 + 16384
  895.     If (STRING019 == YesChar()) Then
  896.         STRING048 = ""
  897.         STRING049 = ""
  898.         STRING050 = ""
  899.         STRING051 = ""
  900.         STRING052 = ""
  901.         STRING053 = ""
  902.         INT038 = 0
  903.         Newlines 2
  904.         PrintLn ReadLine(STRING021, 61)
  905.         Return
  906.     Endif
  907.     If (STRING053 <> "") BIGSTR002 = BIGSTR002 + STRING053
  908.     If (STRING052 <> "") BIGSTR002 = BIGSTR002 + STRING052
  909.     If (STRING051 <> "") BIGSTR002 = BIGSTR002 + STRING051
  910.     If (STRING050 <> "") BIGSTR002 = BIGSTR002 + STRING050
  911.     If (STRING049 <> "") BIGSTR002 = BIGSTR002 + STRING049
  912.     If (STRING048 <> "") BIGSTR002 = BIGSTR002 + STRING048
  913.     STRING048 = ""
  914.     STRING049 = ""
  915.     STRING050 = ""
  916.     STRING051 = ""
  917.     STRING052 = ""
  918.     STRING053 = ""
  919.     INT026 = INT038
  920.     INT038 = 0
  921.     Newline
  922.     If (INTEGER003) FOpen 5, STRING043, 0, 0
  923.     For INT027 = 1 To INT026
  924.         STRING027 = Mid(BIGSTR002, 1, InStr(BIGSTR002, " ") - 1)
  925.         STRING027 = RTrim(STRING027, " ")
  926.         STRING020 = ReadLine(STRING021, 36) + " " + STRING027 + ReadLine(STRING021, 37)
  927.         InputStr STRING020, STRING019, 14, 1, Mask_Ascii(), 256 + 8 + 16384
  928.         If (STRING019 == YesChar()) Then
  929.             Inc INT038
  930.             STRING048 = STRING048 + STRING026 + " "
  931.             If (Len(STRING048) > 200) Then
  932.                 If (STRING049 == "") STRING049 = STRING048
  933.                 If (STRING050 == "") STRING050 = STRING048
  934.                 If (STRING051 == "") STRING051 = STRING048
  935.                 If (STRING052 == "") STRING052 = STRING048
  936.                 If (STRING053 == "") STRING053 = STRING048
  937.                 STRING048 = ""
  938.             Endif
  939.         ElseIf (INTEGER003) Then
  940.             Frewind 5
  941.             While (1) Do
  942.                 FGet 5, STRING025
  943.                 If (Ferr(5)) Break
  944.                 If (InStr(STRING025, STRING027)) Then
  945.                     STRING040 = Mid(STRING025, 15, Len(STRING025) - 14)
  946.                     STRING025 = Mid(STRING025, 1, InStr(STRING025, " ") - 1)
  947.                     INTEGER004 = INTEGER004 - FileInf(STRING040 + STRING027, 4)
  948.                     Break
  949.                 Endif
  950.             EndWhile
  951.         Endif
  952.         BIGSTR002 = Mid(BIGSTR002, InStr(BIGSTR002, " ") + 1, Len(BIGSTR002) - InStr(BIGSTR002, " "))
  953.     Next
  954.     If (INTEGER003) FClose 5
  955.     Return
  956.     :LABEL035
  957.     Newline
  958.     DispFile PPEPath() + "WHLP", 4 + 1
  959.     Return
  960.     :LABEL036
  961.     If ((((((STRING048 == "") && (STRING049 == "")) && (STRING050 == "")) && (STRING051 == "")) && (STRING052 == "")) && (STRING053 == "")) Then
  962.         Newline
  963.         PrintLn ReadLine(STRING021, 43)
  964.         Delay 36
  965.         Return
  966.     Endif
  967.     If (STRING053 <> "") BIGSTR002 = BIGSTR002 + STRING053
  968.     If (STRING052 <> "") BIGSTR002 = BIGSTR002 + STRING052
  969.     If (STRING051 <> "") BIGSTR002 = BIGSTR002 + STRING051
  970.     If (STRING050 <> "") BIGSTR002 = BIGSTR002 + STRING050
  971.     If (STRING049 <> "") BIGSTR002 = BIGSTR002 + STRING049
  972.     If (STRING048 <> "") BIGSTR002 = BIGSTR002 + STRING048
  973.     Newline
  974.     PrintLn ReadLine(STRING021, 44)
  975.     Newline
  976.     INT026 = INT038
  977.     For INT027 = 1 To INT026
  978.         STRING027 = Mid(BIGSTR002, 1, InStr(BIGSTR002, " ") - 1)
  979.         If (INT027 < 10) Print " "
  980.         Print "@X02" + String(INT027) + "." + Space(3)
  981.         Print "@X03" + STRING027 + Space(18 - Len(String(STRING027)))
  982.         If (INT027 % INT036 == 0) Newline
  983.         BIGSTR002 = Mid(BIGSTR002, InStr(BIGSTR002, " ") + 1, Len(BIGSTR002) - InStr(BIGSTR002, " "))
  984.     Next
  985.     Newline
  986.     Return
  987.     :LABEL037
  988.     If (AnsiOn()) Then
  989.         STRING026 = ReadLine(STRING021, 46)
  990.     Else
  991.         STRING026 = ReadLine(STRING021, 47)
  992.     Endif
  993.     STRING036 = Mid(STRING026, 1, 1)
  994.     STRING037 = Mid(STRING026, 2, 1)
  995.     STRING038 = Mid(STRING026, 3, 1)
  996.     STRING039 = Mid(STRING026, 4, 1)
  997.     STRING041 = Chr(8) + Chr(32) + Chr(8)
  998.     Return
  999.     :LABEL038
  1000.     If (PcbNode() == 0) Then
  1001.         STRING018 = Inkey()
  1002.     Else
  1003.         STRING018 = MGetByte()
  1004.     Endif
  1005.     If ((STRING018 == 13) || (STRING018 == Chr(13))) Then
  1006.         Print STRING041 + " " + STRING041
  1007.         Newline
  1008.         PrintLn ReadLine(STRING021, 45)
  1009.         BOOLEAN010 = 1
  1010.         Delay 18
  1011.     Endif
  1012.     Return
  1013.     :LABEL039
  1014.     STRING055 = ReadLine(PCBDat(), 31) + ".@@@"
  1015.     STRING057 = ReadLine(PCBDat(), 32)
  1016.     STRING058 = ReadLine(PCBDat(), 33)
  1017.     FOpen 1, STRING055, 0, 0
  1018.     FRead 1, INT037, 2
  1019.     FSeek 1, CurConf() * INT037 + 515, 1
  1020.     FRead 1, STRING059, 33
  1021.     FClose 1
  1022.     STRING059 = RTrim(STRING059, " ")
  1023.     STRING057 = RTrim(STRING057, " ")
  1024.     STRING058 = RTrim(STRING058, " ")
  1025.     Return
  1026.     :LABEL040
  1027.     INT033 = 0
  1028.     FOpen 1, STRING058, 0, 0
  1029.     While (1) Do
  1030.         FGet 1, STRING018
  1031.         If (Ferr(1)) Break
  1032.         Gosub LABEL046
  1033.         Inc INT033
  1034.         For INT027 = 1 To 2
  1035.             STRING018 = Mid(STRING018, InStr(STRING018, ",") + 1, Len(STRING018) - InStr(STRING018, ","))
  1036.             If (INT027 == 2) Then
  1037.                 STRING045 = Mid(STRING018, 1, InStr(STRING018, ",") - 1)
  1038.                 If (S2I(STRING045, 10) > U_Sec) Then
  1039.                     BIGSTR001 = BIGSTR001 + String(INT033) + Space(3 - Len(INT033))
  1040.                 Endif
  1041.             Endif
  1042.         Next
  1043.     EndWhile
  1044.     FClose 1
  1045.     Return
  1046.     :LABEL041
  1047.     FOpen 1, STRING057, 0, 0
  1048.     Gosub LABEL046
  1049.     While (1) Do
  1050.         FGet 1, STRING018
  1051.         If (Ferr(1)) Break
  1052.         STRING018 = Mid(STRING018, InStr(STRING018, ",") + 1, Len(STRING018) - InStr(STRING018, ","))
  1053.         STRING027 = Mid(STRING018, 1, InStr(STRING018, ",") - 1)
  1054.         If (S2I(STRING027, 10) == U_Sec) Then
  1055.             For INT027 = 1 To 4
  1056.                 STRING018 = Mid(STRING018, InStr(STRING018, ",") + 1, Len(STRING018) - InStr(STRING018, ","))
  1057.                 If (INT027 == 2) Then
  1058.                     STRING025 = Mid(STRING018, 1, InStr(STRING018, ",") - 1)
  1059.                     If (STRING025 <> "32767") INTEGER003 = S2I(STRING025, 10) * 1000
  1060.                 Endif
  1061.             Next
  1062.             STRING027 = Mid(STRING018, 1, InStr(STRING018, ",") - 1)
  1063.             INT028 = S2I(STRING027, 10)
  1064.             If (INT028 == 0) INT028 = 30
  1065.             Break
  1066.         Endif
  1067.     EndWhile
  1068.     FClose 1
  1069.     Return
  1070.     :LABEL042
  1071.     BOOLEAN011 = 1
  1072.     INT034 = 1
  1073.     While (1) Do
  1074.         Gosub LABEL046
  1075.         INT033 = S2I(Mid(BIGSTR001, INT034, 3), 10)
  1076.         STRING032 = ReadLine(STRING058, INT033)
  1077.         If (STRING032 == "") Break
  1078.         STRING047 = Mid(STRING032, 1, InStr(STRING032, ",") - 1)
  1079.         If ((STRING047 <> STRING044) || ((Len(STRING047) == 2) && (STRING047 == Mid(STRING044, 1, 2)))) Then
  1080.             INT034 = INT034 + 3
  1081.             If (INT034 > Len(BIGSTR001)) Break
  1082.             Continue
  1083.             Continue
  1084.         Endif
  1085.         STRING018 = STRING047 + STRING060
  1086.         If (Len(FindFirst(STRING018)) > 0) Then
  1087.             BOOLEAN011 = 0
  1088.             Break
  1089.         Endif
  1090.         INT034 = INT034 + 3
  1091.         If (INT034 > Len(BIGSTR001)) Break
  1092.     EndWhile
  1093.     Return
  1094.     :LABEL043
  1095.     If (INT015) Then
  1096.         FClose 6
  1097.         Gosub LABEL049
  1098.         Gosub LABEL029
  1099.         If (INT013 <= INT012) Then
  1100.             INT015 = 0
  1101.             Delete STRING043
  1102.             FAppend 6, STRING043, 1, 0
  1103.         Endif
  1104.     Else
  1105.         Gosub LABEL019
  1106.     Endif
  1107.     Return
  1108.     :LABEL044
  1109.     If (BOOLEAN013) Then
  1110.         FOpen 1, STRING024, 0, 0
  1111.         INTEGER002 = 128 + INT020 * 13 + INT014 * 64
  1112.         FSeek 1, INTEGER002, 0
  1113.         FRead 1, STRING044, 64
  1114.         FClose 1
  1115.         STRING044 = RTrim(STRING044, " ")
  1116.         STRING026 = STRING031
  1117.     Else
  1118.         STRING044 = STRING024
  1119.         STRING026 = STRING027
  1120.     Endif
  1121.     If (TSTRING061(0) <> "") Then
  1122.         For INT027 = 0 To INT016
  1123.             If (InStr(TSTRING061(INT027), STRING026)) Return
  1124.         Next
  1125.     Endif
  1126.     If (TSTRING062(0) <> "") Then
  1127.         For INT027 = 0 To INT017
  1128.             If (InStr(TSTRING062(INT027), STRING044)) Return
  1129.         Next
  1130.     Endif
  1131.     If (BIGSTR001 <> "") Then
  1132.         STRING060 = STRING027
  1133.         Gosub LABEL042
  1134.     Else
  1135.         BOOLEAN011 = 1
  1136.     Endif
  1137.     If (BOOLEAN011) Then
  1138.         If (BOOLEAN013) Goto LABEL045
  1139.         FPut 6, STRING027
  1140.         FPut 6, Space(14 - Len(STRING027))
  1141.         STRING026 = FileInf(STRING044, 6) + ":" + FileInf(STRING044, 7)
  1142.         FPutLn 6, STRING026
  1143.         :LABEL045
  1144.         If (BOOLEAN013) Then
  1145.             FPut 6, STRING031
  1146.             FPut 6, Space(14 - Len(STRING031))
  1147.             STRING026 = FileInf(STRING044, 6) + ":" + FileInf(STRING044, 7)
  1148.             FPutLn 6, STRING026
  1149.         Endif
  1150.         Inc INT015
  1151.     Endif
  1152.     Return
  1153.     :LABEL046
  1154.     REAL004 = Time()
  1155.     If ((REAL004 - REAL005 < 1) && (INT024 <> 0)) Return
  1156.     REAL005 = REAL004
  1157.     If (INT024 == 0) Print " "
  1158.     If (INT024 > 3) INT024 = 0
  1159.     STRING042 = STRING041 + " " + STRING041
  1160.     Inc INT024
  1161.     Select Case (INT024)
  1162.         Case 1
  1163.             STRING042 = STRING042 + STRING036
  1164.         Case 2
  1165.             STRING042 = STRING042 + STRING037
  1166.         Case 3
  1167.             STRING042 = STRING042 + STRING038
  1168.         Case 4
  1169.             STRING042 = STRING042 + STRING039
  1170.     End Select
  1171.     Print STRING042
  1172.     STRING042 = ""
  1173.     Return
  1174.     :LABEL047
  1175.     INT027 = 0
  1176.     STRING026 = PPEPath() + String(CurConf()) + "\FIL" + String(CurConf())
  1177.     If (Exist(STRING026)) Then
  1178.         FOpen 5, STRING026, 0, 0
  1179.         While (1) Do
  1180.             FGet 5, TSTRING061(INT027)
  1181.             If (Ferr(5)) Break
  1182.             TSTRING061(INT027) = Mid(Upper(TSTRING061(INT027)), 1, 255)
  1183.             Inc INT027
  1184.             INT016 = INT027
  1185.             If (INT027 == 10) Break
  1186.         EndWhile
  1187.     Endif
  1188.     INT027 = 0
  1189.     STRING026 = PPEPath() + String(CurConf()) + "\DIR" + String(CurConf())
  1190.     If (Exist(STRING026)) Then
  1191.         FOpen 5, STRING026, 0, 0
  1192.         While (1) Do
  1193.             FGet 5, TSTRING062(INT027)
  1194.             If (Ferr(5)) Break
  1195.             TSTRING062(INT027) = Mid(Upper(TSTRING062(INT027)), 1, 255)
  1196.             Inc INT027
  1197.             INT017 = INT027
  1198.             If (INT027 == 10) Break
  1199.         EndWhile
  1200.     Endif
  1201.     Return
  1202.     :LABEL048
  1203.     If (Exist(PPEPath() + "WILD.CFG")) Then
  1204.         FOpen 1, PPEPath() + "WILD.CFG", 0, 0
  1205.         FGet 1, STRING018
  1206.         INT021 = S2I(STRING018, 10)
  1207.         FGet 1, STRING018
  1208.         INT018 = S2I(STRING018, 10)
  1209.         INT027 = 0
  1210.         INT022 = 0
  1211.         While (1) Do
  1212.             FGet 1, STRING018
  1213.             If (Ferr(1)) Break
  1214.             If (InStr(STRING018, "\") == 0) Then
  1215.                 If (Len(TSTRING061(INT027) + STRING018 + " ") > 255) Then
  1216.                     Inc INT027
  1217.                     INT016 = INT027
  1218.                 Endif
  1219.                 TSTRING061(INT027) = TSTRING061(INT027) + Upper(STRING018) + " "
  1220.                 If (INT027 == 10) Break
  1221.                 Continue
  1222.             Endif
  1223.             If (Len(TSTRING062(INT022) + STRING018 + " ") > 255) Then
  1224.                 Inc INT022
  1225.                 INT017 = INT022
  1226.             Endif
  1227.             TSTRING062(INT022) = TSTRING062(INT022) + Upper(STRING018) + " "
  1228.             If (INT022 == 10) Break
  1229.         EndWhile
  1230.         If ((TSTRING061(0) <> "") || (TSTRING062(0) <> "")) BOOLEAN014 = 1
  1231.     Else
  1232.         Newlines 2
  1233.         PrintLn "@X0FWILD.CFG does not exist in the WILD.PPE directory"
  1234.         Newlines 2
  1235.         PrintLn "@X0C.....Program Aborted.....@X07"
  1236.         Newlines 2
  1237.         Wait
  1238.         End
  1239.     Endif
  1240.     FClose 1
  1241.     Return
  1242.     :LABEL049
  1243.     Print STRING041
  1244.     If (INT015 >= INT021) Then
  1245.         PrintLn ReadLine(STRING021, 6), INT015, ReadLine(STRING021, 7)
  1246.     Else
  1247.         PrintLn ReadLine(STRING021, 8), INT015
  1248.     Endif
  1249.     Return
  1250.  
  1251. ;------------------------------------------------------------------------------
  1252. ;
  1253. ; Usage report (before postprocessing)
  1254. ;
  1255. ; ■ Statements used :
  1256. ;
  1257. ;    5       End
  1258. ;    2       ClrEol
  1259. ;    2       Wait
  1260. ;    302     Goto 
  1261. ;    335     Let 
  1262. ;    17      Print 
  1263. ;    40      PrintLn 
  1264. ;    242     If 
  1265. ;    2       DispFile 
  1266. ;    11      FOpen 
  1267. ;    2       FAppend 
  1268. ;    10      FClose 
  1269. ;    10      FGet 
  1270. ;    4       FPut 
  1271. ;    2       FPutLn 
  1272. ;    4       StartDisp 
  1273. ;    1       GetUser
  1274. ;    2       Delete 
  1275. ;    6       InputStr 
  1276. ;    40      Gosub 
  1277. ;    34      Return
  1278. ;    10      Delay 
  1279. ;    16      Inc 
  1280. ;    1       Dec 
  1281. ;    37      Newline
  1282. ;    5       Newlines 
  1283. ;    3       Tokenize 
  1284. ;    1       KbdStuff 
  1285. ;    2       Frewind 
  1286. ;    6       FSeek 
  1287. ;    13      FRead 
  1288. ;    1       KeyFlush
  1289. ;    3       EndFunc
  1290. ;    6       Command 
  1291. ;
  1292. ;
  1293. ; ■ Functions used :
  1294. ;
  1295. ;    1       -
  1296. ;    8       *
  1297. ;    2       /
  1298. ;    2       %
  1299. ;    155     +
  1300. ;    49      -
  1301. ;    103     ==
  1302. ;    60      <>
  1303. ;    25      <
  1304. ;    14      <=
  1305. ;    33      >
  1306. ;    27      >=
  1307. ;    156     !
  1308. ;    54      &&
  1309. ;    31      ||
  1310. ;    35      Len(
  1311. ;    5       Upper()
  1312. ;    52      Mid()
  1313. ;    4       Left()
  1314. ;    6       Space()
  1315. ;    8       Ferr()
  1316. ;    13      Chr()
  1317. ;    65      InStr()
  1318. ;    1       LTrim()
  1319. ;    11      RTrim()
  1320. ;    1       Trim()
  1321. ;    1       Time()
  1322. ;    3       U_BdlDay()
  1323. ;    1       NoChar()
  1324. ;    3       YesChar()
  1325. ;    1       Inkey()
  1326. ;    12      String()
  1327. ;    5       Mask_Ascii()
  1328. ;    5       CurConf()
  1329. ;    3       PCBDat()
  1330. ;    9       PPEPath()
  1331. ;    3       PcbNode()
  1332. ;    69      ReadLine()
  1333. ;    7       GetToken()
  1334. ;    4       Exist()
  1335. ;    1       I2S()
  1336. ;    14      S2I()
  1337. ;    1       LangExt()
  1338. ;    3       AnsiOn()
  1339. ;    7       FileInf()
  1340. ;    1       MGetByte()
  1341. ;    3       TokCount()
  1342. ;    5       FlagCnt()
  1343. ;    2       FindFirst()
  1344. ;    1       FindNext()
  1345. ;
  1346. ;------------------------------------------------------------------------------
  1347. ;
  1348. ; Analysis flags : di
  1349. ;
  1350. ; d - Access PCBOARD.DAT ■ 2
  1351. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  1352. ;     for many PPE so they can find various informations on the system
  1353. ;     (system paths, max number of lines in messages, ...) but it may also
  1354. ;     be a way to gather vital informations.
  1355. ;     ■ Search for : PCBDAT()
  1356. ;
  1357. ; i - Sequencially read files in directory ■ 3
  1358. ;     Program is reading files in directory sequencially, maybe to get
  1359. ;     a DIR image, but this can be to look for targets to destroy
  1360. ;     ■ Search for : FINDFIRST(), FINDNEXT()
  1361. ;
  1362. ;------------------------------------------------------------------------------
  1363. ;
  1364. ; Postprocessing report
  1365. ;
  1366. ;    10      For/Next
  1367. ;    14      While/EndWhile
  1368. ;    112     If/Then or If/Then/Else
  1369. ;    2       Select Case
  1370. ;
  1371. ;------------------------------------------------------------------------------
  1372. ;                 AEGiS Corp - Break the routines, code against the machines!
  1373. ;------------------------------------------------------------------------------
  1374.